﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Emulator.GameBoyConfig
{
    public class GBMemoryConfig
    {
        public static Dictionary<byte, string> CartidgeType = new Dictionary<byte, string>() { 
            {0x00,"ROM Only"},
            {0x03,"MBC1+RAM+BATTERY"}
        };

        public static Dictionary<byte, string> RomSize = new Dictionary<byte, string>() { 
            {0x00,"32Kbyte"},
            {0x05,"1Mbytes"}
        };

        public static Dictionary<byte, string> RamSize = new Dictionary<byte, string>() { 
            {0x00,"None"},
            {0x02,"8Kbytes"}
        };

        public static int IOBaseAddress = 0xFF00;

        public static Dictionary<int, int> BitPositionMaskMap = new Dictionary<int, int>()
        {
            {0,1},{1,2},{2,4},{3,8},{4,16},{5,32},{6,64},{7,128}
        };

    }

    public class ColorConfig
    {
        public static Dictionary<int,UInt32> ColorMap =new Dictionary<int,uint>(){{0, 0xFFFFFFFF},{1, 0xFFC0C0C0},{2, 0xFF606060},{3, 0xFF000000}};
    }


    public class GBCPURegister
    {
        public static int A = 0x07,
        B = 0x00,
        C = 0x01,
        D = 0x02,
        E = 0x03,
        H = 0x04,
        L = 0x05,
        F = 0x06;
    }
}


